<!--$Id: txn_class.so,v 10.25 2005/05/17 15:25:50 bostic Exp $-->
<!--Copyright (c) 1997,2008 Oracle.  All rights reserved.-->
<!--See the file LICENSE for redistribution information.-->
<html>
<head>
<title>Berkeley DB: DB_TXN</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,Java,C,C++">
</head>
<body bgcolor=white>
<table width="100%"><tr valign=top>
<td>
<b>DB_TXN</b>
</td>
<td align=right>
<a href="../api_c/api_core.html"><img src="../images/api.gif" alt="API"></a>
<a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a></td>
</tr></table>
<hr size=1 noshade>
<tt>
<b><pre>
#include &lt;db.h&gt;
<p>
typedef struct __db_txn DB_TXN;
</pre></b>
<hr size=1 noshade>
<b>Description: DB_TXN</b>
<p>The DB_TXN object is the handle for a transaction.  Methods of
the DB_TXN handle are used to configure, abort and commit the
transaction.  DB_TXN handles are provided to <a href="../api_c/db_class.html">DB</a> methods
in order to transactionally protect those database operations.</p>
<p>DB_TXN handles are not free-threaded; transactions handles may
be used by multiple threads, but only serially, that is, the application
must serialize access to the DB_TXN handle.  Once the
<a href="../api_c/txn_abort.html">DB_TXN-&gt;abort</a> or <a href="../api_c/txn_commit.html">DB_TXN-&gt;commit</a> methods are called, the handle may
not be accessed again, regardless of the method's return. In addition,
parent transactions may not issue any Berkeley DB operations while they have
active child transactions (child transactions that have not yet been
committed or aborted) except for <a href="../api_c/txn_begin.html">DB_ENV-&gt;txn_begin</a>, <a href="../api_c/txn_abort.html">DB_TXN-&gt;abort</a>
and <a href="../api_c/txn_commit.html">DB_TXN-&gt;commit</a>.</p>
<hr size=1 noshade>
<br><b>Class</b>
<a href="../api_c/env_class.html">DB_ENV</a>, DB_TXN
<br><b>See Also</b>
<a href="../api_c/txn_list.html">Transaction Subsystem and Related Methods</a>
</tt>
<table width="100%"><tr><td><br></td><td align=right>
<a href="../api_c/api_core.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1>Copyright (c) 1996,2008 Oracle.  All rights reserved.</font>
</body>
</html>
